Person.prototype.say = function() {
    console.log('哈哈哈哈');
}
function Person(name) {
    // var this = {
    //     name:name
    //     _proto_:Person.prototype
    // }
    // return this
    this.name = name
}

let p = myNew(Person)('小林')

p.say()


function myNew(fun) {
    return function() {
        let obj = {
            __proto__:fun.prototype
        }
        // 执行构造函数
        fun.call(obj,...arguments)
        return obj
    }
}